package com.star.carserviceapi;

import com.star.carserviceapi.domain.request.CreateAccountRequest;
import com.star.carserviceapi.domain.request.LoginRequest;
import com.star.carserviceapi.domain.request.QryCarBrandRequest;
import com.star.carserviceapi.domain.request.QryCarModelRequest;
import com.star.carserviceapi.domain.request.QryCarSeriesRequest;
import com.star.carserviceapi.domain.request.QryCarYearRequest;
import com.star.carserviceapi.domain.request.QryLawsRequest;
import com.star.carserviceapi.domain.request.QryWeatherRequest;
import com.star.carserviceapi.domain.request.SendValidCodeRequest;
import com.star.carserviceapi.domain.request.VerifyValidCodeRequest;
import com.star.carserviceapi.domain.result.CreateAccountResult;
import com.star.carserviceapi.domain.result.LoginResult;
import com.star.carserviceapi.domain.result.QryBannersResult;
import com.star.carserviceapi.domain.result.QryCarBrandResult;
import com.star.carserviceapi.domain.result.QryCarModelResult;
import com.star.carserviceapi.domain.result.QryCarResult;
import com.star.carserviceapi.domain.result.QryCarSeriesResult;
import com.star.carserviceapi.domain.result.QryCarYearResult;
import com.star.carserviceapi.domain.result.QryLawsResult;
import com.star.carserviceapi.domain.result.QryWeatherResult;
import com.star.carserviceapi.domain.result.SendValidCodeResult;
import com.star.carserviceapi.domain.result.VerifyValidCodeResult;

public interface IClientApi {
	public QryBannersResult qryBanners();

	public QryCarResult qryCarsByUserId(String userId);

	public QryLawsResult qryLawsByUserId(QryLawsRequest request);

	public LoginResult login(LoginRequest request);

	public SendValidCodeResult sendValidCodeRequest(SendValidCodeRequest request);

	public VerifyValidCodeResult verifyValidCode(VerifyValidCodeRequest request);

	public QryCarBrandResult qryCarBrand(QryCarBrandRequest request);

	public QryCarSeriesResult qryCarSeries(QryCarSeriesRequest request);

	public QryCarYearResult qryCarYear(QryCarYearRequest request);

	public QryCarModelResult qryCarModel(QryCarModelRequest request);
	
	public CreateAccountResult createAccount(CreateAccountRequest request);
	
	public QryWeatherResult qryWeather(QryWeatherRequest request);
}
